package com.sinoglobal.ningxia.utils;

import com.sinoglobal.ningxia.R;
import java.util.Locale;

public class StringUtil {
	/**
	 * 判断是否为null或空值
	 * 
	 * @param str
	 *            String
	 * @return true or false
	 */
	public static boolean isNullOrEmpty(String str) {
		return str == null || str.trim().length() == 0;
	}

	/**
	 * 判断str1和str2是否相同
	 * 
	 * @param str1
	 *            str1
	 * @param str2
	 *            str2
	 * @return true or false
	 */
	public static boolean equals(String str1, String str2) {
		return str1 == str2 || str1 != null && str1.equals(str2);
	}

	/**
	 * 判断str1和str2是否相同(不区分大小写)
	 * 
	 * @param str1
	 *            str1
	 * @param str2
	 *            str2
	 * @return true or false
	 */
	public static boolean equalsIgnoreCase(String str1, String str2) {
		return str1 != null && str1.equalsIgnoreCase(str2);
	}

	/**
	 * 判断字符串str1是否包含字符串str2
	 * 
	 * @param str1
	 *            源字符串
	 * @param str2
	 *            指定字符串
	 * @return true源字符串包含指定字符串，false源字符串不包含指定字符串
	 */
	public static boolean contains(String str1, String str2) {
		return str1 != null && str1.contains(str2);
	}

	/**
	 * 判断字符串是否为空，为空则返回一个空值，不为空则返回原字符串
	 * 
	 * @param str
	 *            待判断字符串
	 * @return 判断后的字符串
	 */
	public static String getString(String str) {
		return str == null ? "" : str;
	}
    /**
     * 判断字符串是不是空白，true为空白，false为非空白
     * @author qiwx
     * @createdate 2014-6-5 下午1:55:06
     * @Description:
     */
	public static boolean isBlank(String str) {
		int strLen;
		strLen = str.length();
		if (str == null || strLen == 0) {
			return true;
		}
		for (int i = 0; i < strLen; i++) {
			
			if ((isSpace(str.charAt(i)) == false)) {
				return false;
			}
		}
		return true;
	}
	//判断字符是不是空格，全角和半角都认为是空格 ，返回true
   private static  boolean  isSpace(char c){
	   return Character.isWhitespace(c);
	   
   }
	//将个位数左边补0
	public static String LeftPad_Tow_Zero(int str) {
		java.text.DecimalFormat format = new java.text.DecimalFormat("00");
		return format.format(str);
	}
	/**
	 * 
	 * @author qiwx
	 * @createdate 2014-6-5 上午10:58:10
	 * @Description:source 是被处理字符串对象，start为起点匹配字符串，end为结束匹配字符串
	 *  type匹配类型，true为匹配大小写，false为不匹配大小写,此方法不做字符串的空判断，判断再调用前处理
	 */
	public static String getString(String source ,String start,String end,boolean type){
		String result=null;	
		//start字符串长度
		int start_len;
		if(!type){
			Locale locale=Locale.getDefault();
			source=source.toLowerCase(locale);
			start=start.toLowerCase(locale);
			end=end.toLowerCase(locale);
		}
		start_len=start.length();
		int pos1=source.indexOf(start);
		int pos2=source.indexOf(end);
		if(pos1<0||pos2<0)
			return null;
		if(pos1+start_len>=pos2)
			return null;
		result=source.substring(pos1+start_len,pos2);		
		return result;
	}
}
